TableDataImport

生成数据导入的事务

请求地址

POST
http://OmsAddress/app/newoms.php/webservice/oamp/table-data/import?cmd=10013&ip-type=webservicerest&access-token=AccessTokenVal

POST请求参数说明

参数名称 数据类型 说明 是否必填字段 备注
set_id 整型 事务所在的集群的id
tableKeysList 数组 导入数据的表
importSpeed 整型 数据导入的速度,返回: (0, 50000]
RollBackType 整型 数据导入类型 0:全量导入 1:部分回档
DataType 整型 数据来源类型0:关联事务ID 1:手动输入机器
RelateTransId 整型 DataType = 0时,关联的事务的ID DataType = 0,必填
ipList 字符串 DataType = 1时,数据的机器上的路径,格式为:ip username password rollback_dir,并且账号密码中不能含有(\ ; - 空格),多个用换行分开如:1.1.1.1 tcaplus tcaplus /data/rollback_dir 当DataType = 1,ipList必填; DataType = 0,ipList传空字符串
deleteBeforeImport 整型 import前是否先删除线上数据,默认值0不删除,1为删除 1. deleteBeforeImport给0,导入完的效果:</br>case 1 构造出来的数据中没有A记录,那么A的线上数据维持不变</br>case 2 构造出来的数据中有A记录,要导入的线上环境也有A记录,会把构造出的A记录Replace到线上。Replace对于一级字段是合并逻辑,对于二级字段是覆盖逻辑</br>case 3 构造出来的数据中有A记录,要导入的线上环境没有A记录,会把构造出的A记录Replace到线上。</br></br>2. deleteBeforeImport给1,导入完的效果:</br>case 1 构造出来的数据中没有A记录,会删掉A的线上数据</br>case 2 构造出来的数据中有A记录,会删掉A的线上数据,再拿构造出的A记录写回去</br>case 3 构造出来的数据中有A记录,会删掉A的线上数据(不存在不报错),再拿构造出的A记录写回去</br></br>请提单人根据预期的效果合理选择此选项

Data参数

使用json格式表示记录相关信息,示例如下:

{
    "setId": 126,
    "tableKeysList": [
        {
            "AppID": 2,
            "ZoneID": 1,
            "TableName": "type_right_4"
        }
    ],
    "ipList": "1.1.1.1 tcaplus tcaplus /data/rollback_dir",
    "importSpeed": 2000,
    "RollBackType": 0,
    "DataType": 1
}

返回语法

返回参数说明

  1. 返回状态码不为200时,表示审核失败,返回数据为执行事务失败的信息

  2. 返回状态码为200,表示事务成功,返回的数据结构如下:

字段名称 数据类型 说明 备注
trans_id 整型 执行的对应的事务的id
set_id 整型 事务所在的集群

请求示例

通过 curl 方法发起请求

命令中的参数请参考本页中的“POST请求参数说明”,access-token的获取方法详见:获取access-token

curl -H "Content-type: application/json" -X "POST" -d '{
    "setId": 126,
    "tableKeysList": [
        {
            "AppID": 2,
            "ZoneID": 1,
            "TableName": "type_right_4"
        }
    ],
    "ipList": "1.1.1.1 tcaplus tcaplus /data/rollback_dir",
    "importSpeed": 2000,
    "RollBackType": 0,
    "DataType": 1
}' http://omsaddress/app/newoms.php/webservice/oamp/table-data/import?cmd=10013&ip-type=webservicerest&access-token=<access-token>

返回示例

成功返回示例

http请求的Status=200

{
    "SetId": "126",
    "TransId": 108,
    "username": "username"
}

错误返回

http请求的Status!=200

{
    "name": "Unauthorized",
    "message": "You are requesting with an invalid credential.",
    "code": 0,
    "status": 401,
    "type": "yii\\web UnauthorizedHttpException"
}
{
    "Error": [
        "can not find app_id(2),zone_id(3),table_name(add_table19)"
    ]
}

results matching ""

    No results matching ""